json = require("json")
mobox = require("OILua_JavelinExt")
m3 = require("oi_base_mobox")
function GenerateViewHTML(strLuaDEID)
local nRet, strRetInfo
local autoplay = false
local strHtmlTitle = "";
local strHtmlRow = "";
--[[ 获取样式 ]]
local strHtmlStyle = GetHtmlStyle();
--[[ 列明 ]]
local tabTitleList = { "工位", "状态", "物料编码", "物料名称", "批次号", "装箱件数" }
--[[ 组织列名 ]]
--[[ class 处理样式 这里 组成(table-col' .. i .. ') table-col1,table-col2,table-col3 ]]
for i = 1, #tabTitleList do
strHtmlTitle = strHtmlTitle .. '
' .. tabTitleList[i] .. '
'
end
-- 获取执行中的作业数据
local tabDataList = {}
local packing_list, packing
local condition = "S_STATION = 'A' AND S_STATE IN('新建','启用')"
local strFieldList = '["S_STATE","S_ITEM_CODE","S_ITEM_NAME","S_BATCH_NO","S_STATION","N_ACC_QTY"]'
nRet, packing_list = mobox.queryTable(strLuaDEID, "TN_GT_Packing_Order", strFieldList, 1000, condition,
"T_CREATE ASC")
if (nRet ~= 0) then lua.Error(strLuaDEID, debug.getinfo(1), "获取【装箱工单】失败!" .. packing_list) end
if (#packing_list > 0) then
packing_list = json.decode(packing_list)
-- 添加装箱工单信息
for i = 1, #packing_list do
tabDataList[i] = {
state = packing_list[i].S_STATE,
item_code = packing_list[i].S_ITEM_CODE,
item_name = packing_list[i].S_ITEM_NAME,
batch_no = packing_list[i].S_BATCH_NO,
station_no = packing_list[i].S_STATION,
qty = packing_list[i].N_ACC_QTY,
back = "#ffc107"
}
if (packing_list[i].S_STATE ~= '启用') then
tabDataList[i].back = "#2196F3"
end
end
end
if (#tabDataList > 4) then
autoplay = true
end
--[[ 组织行数据html ]]
for i = 1, #tabDataList do
strHtmlRow = strHtmlRow .. '' ..
'
' .. '
' ..
tabDataList[i].state .. '
' .. '
' .. '
' ..
tabDataList[i].item_code .. '
' .. '
' .. tabDataList[i].item_name ..
'
' .. '
' .. tabDataList[i].batch_no .. '
' ..
'
' .. tabDataList[i].station_no .. '
' ..
'
' .. tabDataList[i].qty .. '
' .. '
'
end
--[[ 总html ]]
local strHtml = ' ' .. '
' .. strHtmlTitle .. '
' ..
'
' .. '
'
local action = {}
action[1] = {
action_type = "chart",
value = {
graphicType = "html",
title = {
text = "当前入库任务",
align = "left",
color = "#fff",
font = "微软雅黑",
fontSize = 18
},
swiper = {
--[[ 容器名称不能重复 不能为空 swiper-container class 需要指定 ]]
containerName = "zxgw1",
--[[ 强制Swiper的宽度(px),"undefined" 或 整数, 当你的Swiper在隐藏状态下初始化时用得上。这个参数会使自适应失效。可设置为undefined使这个参数无效。 ]]
width = "undefined",
--[[ 强制Swiper的高度(px),当你的Swiper在隐藏状态下初始化时且切换方向为垂直才用得上。这个参数会使自适应失效。 ]]
height = 500,
--[[ 排列方向 vertical , horizontal ]]
direction = "vertical",
--[[ 切换速度,即slider自动滑动开始到结束的时间(单位ms) ]]
speed = 2000,
--[[ loop 模式如果与 slidesPerView: 'auto' 一起使用,需要设置 loopedSlides 指定要循环(重复)的幻灯片数量。 ]]
loop = true,
-- loopedSlides=10,
--[[ 设置slider容器能够同时显示的slides数量,整数或auto ]]
slidesPerView = 'auto',
--[[ 在slide之间设置距离(单位px)。 ]]
spaceBetween = 10,
--[[ 默认情况下Swiper 每次滑动时只滑动一个Slide,并且会自动贴合Wrapper。开启自由模式后,Swiper 会根据惯性滑动可能不止一格且不会贴合。 ]]
freeMode = false,
--[[ 设定slide与左边框的预设偏移量(单位px)。 垂直就行与上方距离 ]]
slidesOffsetBefore = 10,
--[[ 设定slide与右边框的预设偏移量(单位px)。 垂直就行与下方距离 ]]
slidesOffsetAfter = 10,
--[[是否自动播放,true 需要指定 autoplayDelay ]]
autoplay = autoplay,
--[[ 播放间隔时间,单位ms ]]
autoplayDelay = 100
},
html = strHtmlStyle .. strHtml
}
}
-- Debug( strLuaDEID, debug.getinfo(1), "action! ", action )
nRet, strRetInfo = mobox.setAction(strLuaDEID, json.encode(action))
if (nRet ~= 0) then
lua.Error(strLuaDEID, debug.getinfo(1), "setAction失败! " .. strRetInfo)
end
end
function GetHtmlStyle()
return
''
end